import UIKit

// 常量
class Const {
    // 图标
    public static let ICON_CELL_NAME = "ICON_CELL"                          // 单元格名字
    public static let ICON_FILE_NAME = "%02d.png"                           // 文件名
    public static let ICON_COUNT = 24                                       // 数量
    
    // 事件
    public static let UM_CHAT_C2S =
        Notification.Name("UM_CHAT_C2S")                                    // 聊天事件（客户端到服务器）
    public static let UM_CHAT_S2C =
        Notification.Name("UM_CHAT_S2C")                                    // 聊天事件（服务器到客户端）
    public static let UM_FRIEND_LOGOFF =
        Notification.Name("UM_FRIEND_LOGOFF")                               // 好友离线事件
    public static let UM_FRIEND_LOGON =
        Notification.Name("UM_FRIEND_LOGON")                                // 好友登录事件
    public static let UM_GET_ADD_FRIEND_REQUEST =
        Notification.Name("UM_GET_ADD_FRIEND_REQUEST")                      // 得到添加好友请求事件
    public static let UM_GET_ADD_FRIEND_RESULT =
        Notification.Name("UM_GET_ADD_FRIEND_RESULT")                       // 得到添加好友结果事件
    public static let UM_GET_LOGON_RESULT =
        Notification.Name("UM_GET_LOGON_RESULT")                            // 得到登录结果事件
    public static let UM_GET_REG_RESULT =
        Notification.Name("UM_GET_REG_RESULT")                              // 得到注册结果事件
    public static let UM_NETWORK_ERROR =
        Notification.Name("UM_NETWORK_ERROR")                               // 网络错误事件

    // 数据长度
    public static let MAX_USER_COUNT = 50                                   // 最大用户数
    public static let MAX_USERNAME_LEN = 16                                 // 最大用户名长度
    public static let MAX_PASSWORD_LEN = 16                                 // 最大密码长度
    public static let MAX_CONTENT_LEN = 1023                                // 一次发送的最大聊天内容长度

    // 注册窗口
    public static let REG_WINDOW_ICON_COLUMNS: CGFloat = 6                  // 图标列数
    public static let REG_WINDOW_ICON_SPACING: CGFloat = 2                  // 图标间距

    // 聊天窗口
    public static let CHAT_WINDOW_LABEL_CONTENT_CORNER_RADIUS: CGFloat = 10 // 聊天内容背景的圆角矩形半径
    public static let CHAT_WINDOW_LABEL_CONTENT_BORDER_COLOR_LEFT =
        UIColor.gray.cgColor                                                // 聊天内容边框颜色（左）
    public static let CHAT_WINDOW_LABEL_CONTENT_TEXT_COLOR_RIGHT =
        UIColor.white                                                       // 聊天内容文字颜色（右）
    public static let CHAT_WINDOW_LABEL_CONTENT_BACKGROUND_COLOR_RIGHT = CGColor(
        red: 0 / WHITE, green: 153 / WHITE, blue: 255 / WHITE, alpha: 1)    // 聊天内容背景色（右）
    public static let CHAT_WINDOW_LABEL_TIME_TEXT_COLOR = UIColor.gray      // 时间文字颜色
    
    // 控件 tag
    public static let TAG_LABEL_USERNAME = 1                                // "用户名"标签
    public static let TAG_EDIT_USERNAME = 2                                 // "用户名"编辑框
    public static let TAG_LABEL_PASSWORD = 3                                // "密码"标签
    public static let TAG_EDIT_PASSWORD = 4                                 // "密码"编辑框
    public static let TAG_LABEL_REPASSWORD = 5                              // "确认密码"标签
    public static let TAG_EDIT_REPASSWORD = 6                               // "确认密码"编辑框
    public static let TAG_LABEL_USER_ICON = 7                               // "用户头像"标签
    public static let TAG_LSIT_VIEW_ICONS = 8                               // 头像列表控件
    public static let TAG_BUTTON_OK = 9                                     // "确定"按钮
    public static let TAG_BUTTON_CANCEL = 10                                // "取消"按钮
    public static let TAG_BUTTON_SEND = 11                                  // "发送"按钮
    
    // 比例
    public static let SCALE_LABEL_HEIGHT = 0.05                             // 标签高度与屏幕高度之比
    public static let SCALE_CHAT_WINDOW_ICON_SIZE = 0.12                    // 聊天窗口用户头像的尺寸与屏幕宽度之比
    public static let SCALE_CHAT_WINDOW_PADDING = 0.03                      // 聊天窗口控件间距与屏幕宽度之比
    public static let SCALE_REG_WINDOW_PADDING = 0.05                       // 注册窗口控件间距与屏幕宽度之比
    
    // 键
    public static let KEY_CHAT_INFO = "chatInfo"                            // 聊天信息

    // 其它
    public static let DATE_TIME_FORMAT = "yyyy-MM-dd hh:mm:ss"              // 时间格式，格式例：2015-01-01 12:00:00
    public static let WHITE = 255.0                                         // 白色的 RGB 值
}
